import { ColDef, ICellRendererParams } from '@ag-grid-community/core'

/** 列表项 */
export type IInpTransferOrderNumItem = IInpTransferOrderNumReqItem & {
  /** 虚拟字段，用于列配置 */
  ['序号']?: null
  message?: string | null
}

/** columnDefs 配置项 */
export type TCol<T extends keyof IInpTransferOrderNumItem = keyof IInpTransferOrderNumItem> = ColDef<
  IInpTransferOrderNumItem,
  IInpTransferOrderNumItem[T]
> & { field: T }

/** cellRenderer 等相关参数 */
export type TCellParams<T extends keyof IInpTransferOrderNumItem = keyof IInpTransferOrderNumItem> =
  ICellRendererParams<IInpTransferOrderNumItem, IInpTransferOrderNumItem[T]>

/** 录入转单号请求入参项 */
export interface IInpTransferOrderNumReqItem {
  /** 运单编号 */
  waybillNo: string
  /** 转单号 */
  trackingNumber: string
  /** 物流公司 */
  logisticsCompany: string
}

/** 录入转单号请求响应 */
export interface IInpTransferOrderNumRes {
  waybillTrackingResults: Array<{
    success: boolean
    message: string | null
  }>
}
